<?php
namespace jzq\test\sign;
require_once __DIR__ . '/../../vendor/autoload.php';
require_once __DIR__ . '/../clientInfo.php';

use com\jzq\api\model\bean\Signatory as Signatory;
use com\jzq\api\model\menu\DealType;
use com\jzq\api\model\menu\IdentityType;
use com\jzq\api\model\menu\SequenceInfo;
use com\jzq\api\model\menu\SignLevel as SignLevel;
use com\jzq\api\model\sign\ApplySignFileRequest;
use org\ebq\api\model\bean\UploadFile;
use org\ebq\api\tool\RopUtils;
use jzq_self\test\ClientInfo;
//组建请求参数
$requestObj=new ApplySignFileRequest();

//* 签约文件
$requestObj->file=new UploadFile("D:\\tmp\\test.pdf");
//* 合同名称
$requestObj->contractName="合同0001";

//是否使用云证书1使用,其它:不使用
$requestObj->serverCa=1;

//签约处理类型—自动签
$requestObj->dealType=DealType::$AUTH_SIGN;  


//* 签约方
$signatories=array();

//签约方1---个人
$signatory=new Signatory();
//* 证件类型
$signatory->setSignatoryIdentityType(IdentityType::$IDCARD);
//* 名称或公司名称
$signatory->fullName="//TODO 个人姓名";
//* 身份证号
$signatory->identityCard="//TODO 个人证件号";
//* 手机号码,为个人时必填,企业可不填
$signatory->mobile='//TODO 个人手机号';

//以下使用json串确定位置。页以0开始，注意
//签字位置,页码从0开始 [{"page":0,","chaptes":[{"offsetX":0.12,"offsetY":0.23}]},{"page":1,"chaptes":[{"offsetX":0.45,"offsetY":0.67}]}]]
$signatory->setChapteJson(array(
    array(
        'page'=>0,
        'chaptes'=>array(
            array("offsetX"=>0.12,"offsetY"=>0.23),
            array("offsetX"=>0.45,"offsetY"=>0.67)
        )
    ),
    array(
        'page'=>2,
        'chaptes'=>array(
            array("offsetX"=>0.5,"offsetY"=>0.5)
        )
    )
));
//echo $signatory->setChapteJson."</br>";
//签章类型（0，标准图形章；1，手写）
$signatory->signLevel=0;

array_push($signatories, $signatory);

//签约方2----企业
$signatory=new Signatory();
$signatory->setSignatoryIdentityType(IdentityType::$BIZLIC);
$signatory->fullName="//TODO 企业名称";
$signatory->identityCard="//TODO 营业执照号";
$signatory->email='//TODO 注册企业账号时的邮箱';

//以下使用json串确定位置。页以0开始，注意
//签字位置,页码从0开始 [{"page":0,","chaptes":[{"offsetX":0.12,"offsetY":0.23}]},{"page":1,"chaptes":[{"offsetX":0.45,"offsetY":0.67}]}]]
$signatory->setChapteJson(array(
    array(
        'page'=>0,
        'chaptes'=>array(
            array("offsetX"=>0.5,"offsetY"=>0.23),
           array("offsetX"=>0.45,"offsetY"=>0.67)
        )
    ),
    array(
        'page'=>1,
        'chaptes'=>array(
            array("offsetX"=>0.5,"offsetY"=>0.5)
        )
    )
));
//echo $signatory->setChapteJson."</br>";
//签章类型（0，标准图形章；1，公章）

$signatory->noNeedVerify=0;
array_push($signatories, $signatory);


$requestObj->signatories=$signatories;

//签章类型
$requestObj->signLevel=0;

//请求
$response=RopUtils::doPostByObj($requestObj,ClientInfo::$app_key,ClientInfo::$app_secret,ClientInfo::$services_url);
//以下为返回的一些处理
$responseJson=json_decode($response);
print_r("response:".$response."</br>");
print_r("format:</br>");
var_dump($responseJson); //null
if($responseJson->success){
    echo $requestObj->getMethod()."->处理成功";
}else{
    echo $requestObj->getMethod()."->处理失败";
}